Diameter is a protocol described in RFC 3588 and has been used in 3GPP IMS (IP Multimedia Subsystem) standards to provide an Authentication, Authorization, and Accounting (AAA) framework for applications such as network access or IP mobility, and has found many new applications in IP networks since the introduction of IMS concepts. In an IMS network, Diameter servers (hosts) can implement various functions, including without limitation Application Server (AS), Policy Decision Function (PDF), Resource Admission Control Subsystem (RACS), AAA, Home Subscriber Server (HSS), Call Control Function (CCF), Charging Data Function (CDF), and Online Charging System (OCS). A Diameter server, moreover, can be implemented as a single network element (NE) or as multiple network elements (e.g., a server cluster). In addition, any network element of an IMS network or other legacy or 2G networks can support Diameter clients which interface with the Diameter server(s) using the Diameter protocol. It is desirable to control or regulate Diameter message traffic flow in an IMS network so as to facilitate optimal system performance and reliability, including NE availability and geographical redundancy. Moreover, it is desirable to balance the load and traffic among the Diameter servers and clients. Conventional IMS networks sometimes include TCP/IP load balance switches (LBS) that monitor the traffic and load among network elements to determine traffic directions based on current network element load status and on the number and size of messages. However, the Diameter protocol is an application based Application Programming Interface (API) built on a network layer above TCP/IP, and thus Diameter traffic control and load balancing cannot be achieved using conventional TCP/IP load balance switches. For example, a TCP/IP layer LBS monitors the loading of IP sockets in the network, whereas Diameter load balance issues are unrelated to individual socket loads since one socket may contain multiple Diameter protocol dialogs for multiple applications.
A limited Diameter routing solution is described in U.S. Pat. No. 7,170,982 to Li et al. with respect to AAA, the entirety of which is hereby incorporated by reference. This router routes an accounting request and response message to an account server for serving calls by a particular subscriber because subscriber data resides in a particular server. When a subscriber originates a call, the account request is transmitted to the Diameter router that determines which account server serves that subscriber and forwards the account request message to selected account server. This router, however, does not address overall Diameter load balancing and traffic control in IMS networks. Other soft switch approaches, such as the Lucent Control Platform (LCP)/Lucent Session Manager (Lucent Soft Switch), operate to direct Diameter messages for IMS network elements to HSS or CCF Diameter Servers, but this load balance mechanism simply chooses the Uniform Resource Identifier (URI) of a destination host to distribute Diameter request messages evenly and randomly, and therefore does not perform effective traffic management and load balancing. Thus, there remains a need for improved methods and apparatus to balance Diameter protocol loading and manage traffic in IMS networks.